﻿// See https://aka.ms/new-console-template for more information

using Newtonsoft.Json;
using Newtonsoft.Json.Linq;
using SimpleVector;
using System.Collections.Concurrent;
using System.ComponentModel;
using System.Diagnostics;
using System.IO.Compression;
using System.Numerics;
using System.Reflection;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
using System.Runtime.Intrinsics;
using System.Runtime.Intrinsics.X86;
using System.Security.AccessControl;
using System.Text;
using System.Text.Json.Serialization;


int n = 1024 * 1024;
int[] arr1 = new int[n];
int[] arr2 = new int[n];
Random rand = new Random();
for (int i = 0; i < arr1.Length; i++)
{
    arr1[i] = rand.Next(500);
    arr2[i] = rand.Next(500);
}
Stopwatch stopwatch = Stopwatch.StartNew();

SuperVector superVector1 = arr1;
SuperVector superVector2 = new SuperVector(arr2);
bool result= superVector1.Equals(superVector2);

var t1 = -superVector1;
var t2= +superVector1;
var t3= ~superVector1;
var t4 = superVector1 * superVector2;
var t5 = superVector1 + superVector2;
var t6 = superVector1 ^ superVector2;
int t7 = t6.Sum();
int[] t8 = (int[])t1;
var t9=t6.Variance();
var t10 = t6.StandardDeviation();
var t11 = superVector1.Max();
var t12 = superVector1.Any(1);


stopwatch.Stop();
Console.WriteLine($"总耗时：{stopwatch.ElapsedMilliseconds}ms");